home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / MacTech® Magazine / Volume 06 - 1990 / 06.11 Nov 90 / NeuralNet Estimator⁄EDIT / test data.c < prev   
Encoding:
C/C++ Source or Header  |  1989-08-03  |  1.2 KB  |  55 lines  |  [TEXT/KAHL]

  1. #include "Neural Network.h"
  2. #include <math.h>
  3.  
  4. extern DTypeVector     yData;
  5. extern DTypeMatrix    XData;
  6. extern DTypeVector    Alpha[];
  7.  
  8. SetTestNet(net)        /* setup specification for test network */
  9.     NeuralNet * net;
  10. {    
  11.     net->OutLayer = 2;    /* default network must have 2 layers        */
  12.     
  13.     net->Units[0] = 3;    /* number of input units, must have at least two */
  14.     net->Units[1] = 2;        
  15.     net->Units[2] = 1;    /* must be single output unit for Compute_SS function    */
  16.     
  17.     net->method = GaussNew;
  18.     net->maxstep = 1.0;
  19.     
  20. }
  21.  
  22. testData(net)
  23.     NeuralNet * net;
  24. {
  25.     int    i,j,k,m;
  26.     DataType * cell;
  27.     DataType * ycell;
  28.     int Obs = 16;
  29.     int grid = 4;
  30.     int Parms = net->Units[0];
  31.     DataType data;
  32.     
  33.     AllotDTypeMatrix(&XData,Obs,net->Units[0]);
  34.     AllotDTypeVector(&yData,Obs);
  35.  
  36.     HLock(XData.cells);
  37.     HLock(yData.cells);    
  38.     cell = *XData.cells;    
  39.     ycell = *yData.cells;
  40.     for(j=0; j<Obs; j++)
  41.         *(cell + (j*XData.cols + 0)) = 1.0;
  42.     for(j=0, k=1, m=0; j<Obs; j++, k++)
  43.     {    if(k==Obs/grid+1) k=1;
  44.         if(k==1) m += 1;
  45.         *(cell + (j*XData.cols + 1)) = 10*m;
  46.         *(cell + (j*XData.cols + 2)) = 10*k;
  47.     }    
  48.     for(j=0; j<Obs; j++)
  49.         ycell[j] = pow(*(cell+(j*XData.cols+1)),.2)*pow(*(cell+(j*XData.cols+2)),.8);
  50.  
  51.     HUnlock(XData.cells);
  52.     HUnlock(yData.cells);
  53. }
  54.  
  55.